'''
str.split(sep=None, maxsplit=-1)
sep：分隔符（默认按空白符分割）
maxsplit：最大分割次数（默认全部分割）
'''
# 1. 默认空格分割
text = "apple banana cherry"
print(text.split())  # ['apple', 'banana', 'cherry']

text = "hello   world"  # 多个空格
print(text.split())     # ['hello', 'world']（自动合并空白）

# 2. 指定分隔符
csv_line = "张三,25,北京"
print(csv_line.split(','))  # ['张三', '25', '北京']

log = "2023-08-01|ERROR|404"
print(log.split('|'))       # ['2023-08-01', 'ERROR', '404']

# 3. 限制分割次数
text = "key1=value1=detail"
print(text.split('=', 1))  # ['key1', 'value1=detail']（只分割1次）

ip = "192.168.1.1"
print(ip.split('.', 2))     # ['192', '168', '1.1']

# 4. 处理多个分隔符
# 需结合正则表达式（使用 re.split）
import re
text = "apple, banana; cherry|orange"
print(re.split(r'[,;|]\s*', text))  # ['apple', 'banana', 'cherry', 'orange']

# 5. 处理头尾分隔符
text = ",start,end,,"
print(text.split(','))       # ['', 'start', 'end', '', '']
print([s for s in text.split(',') if s])  # 过滤空值 → ['start', 'end']

# 6. 分割与去除空白
text = "  apple  banana  "
print(text.split())          # ['apple', 'banana']（自动去首尾空白）
print(text.split(' '))       # ['', '', 'apple', '', 'banana', '', '']

# 7. 空字符串处理
text = ""
print(text.split())       # []（空列表）
print(text.split(','))    # ['']（单个空元素）